Monitoring objects for changes
Note: text in square brackets [] denotes text spoken by the screenreader.
Welcome to this tutorial on using AT Prime to get your screenreader to announce changes in the text of an object.
What with the varying degrees of accessibility of controls and objects which we find in applications, it has traditionally been quite a task to master a screenreader to get the maximum amount of useful information from a control that can be focused using standard navigation or special navigation modes. Even more complex is the task of getting your screenreader to alert you automatically when there are changes in the text of an object which doesn’t even have keyboard focus.
Some screenreaders, such as Jaws, have very powerful tools to let you monitor objects so that changes in their text are announced automatically. But the problem with many of these customisation tools is that they can be really difficult to master and are therefore often overlooked by users who really could benefit from them.
AT Prime makes it very easy to monitor objects for changes in their text so that while you are focus on one control in a window, your screenreader can read out changes in a different object somewhere else in the window.
There are two ways you can do this in AT Prime: one way is to turn on the feature from the AT Prime menu when you are focused on the control you want to monitor and the other way is to set the feature for the selected object in the Window Inspector list. I’ll start by showing you the first way using the AT Prime menu.
You will have noticed from the earlier tutorials that there is an edit field in the Demo app window called ‘Current total’ which contains a number which updates every five seconds. The number and the five second interval don’t matter - the control just simulates what can happen in the case where there's a control which updates from time to time. We can imagine a situation where you need to be aware of every time it updates - it could be a stock price, for example, or some kind of sales figure.
First, I need to tab to the Current total edit field:
[Current total, edit, 567, Remember to order more stock...]
And here it is. To activate the feature which monitors for changes, I open the AT Prime menu and look for the item ‘Turn on speak changes for the current object’. I know that this item is near the bottom of the menu so I’m just going to arrow up to find it
[Exit AT Prime
Refresh AT Prime
Turn on Speak Changes for the current object, k]
Here it is and I’ll press Enter.
I’m going to tab away from the Current total field:
[Hello button...
579 ... 580]
And every five seconds, as we can hear, the screenreader speaks the new number as the control updates.
I can quickly turn off this monitoring by selecting the ‘Turn off speak changes’ item in the AT Prime menu.
[Turn off Speak Changes, k]
Since the ‘Turn off speak changes’ item will only be present in the menu if you have already turned on the feature, you can find out if the feature is active at any time by opening the AT Prime menu and arrowing up to see if the 'Turn off' item is there.
But what if you want to monitor changes in an object which does not normally receive keyboard focus? Well, you could turn on Optimise Tabbing mode and tab to the object and then turn on speak changes from the AT Prime menu but it is easier to use the Window Inspector instead.
To show you how to do it in the Window Inspector, I’m going to use the free audio application Audacity to show you how you can monitor changes in the peak recording level meter.
I have opened Audacity and I can start recording audio at any time if I want but I want to know that my microphone recording level is OK. There is a recording level meter on Audacity’s toolbar and it should be possible to access it using your screenreader’s special navigation modes and cursors but it can be quite tricky to do. It’s very easy in the Window Inspector. I open the Window Inspector:
[Context menu
Window Inspector - AT Prime dialog. List.
Grabber, unknown object, 1, not selected, 1 of 68]
and the objects in the Audacity window are now shown in the list. When a sighted user wants to monitor the recording level, they would have to turn on record level monitoring by right-clicking the record level meter on the toolbar and then select ‘Start monitoring’ from the popup menu which is then displayed. After that, they would then just glance at the changes in the recording level as they input audio.
Our first task, therefore, is to right-click the record level meter and to select the ‘Start monitoring’ command. This has to be done before we turn on the speak changes feature in AT Prime. I need to find the record level meter in this rather long list of objects in the Window Inspector. I’ll press r until I come to the record level meter.
[
r, Restore, button...
r, Record meter peak -60dB, Split button]
Here it is. Now, I need to simulate a right-click on it: I do that by selecting the ‘Right-click’ command in the Actions menu.
[View submenu, Actions submenu
Activate object...
Select object...
Right-click on object, F10, Display the object's shortcut menu if any, R
Audacity
Context menu
Start monitoring]
AT Prime closes the Window Inspector and clicks the record level meter with the right mouse button and here we have the popup menu from which I can select the Start monitoring command.
Now, I have to turn on the speak changes feature and I do that by opening the Window Inspector and find the record meter again in the list.
[Context menu
Window Inspector - AT Prime dialog. List.
r, Restore...
r, Record meter peak -60dB, Split button]
and this time, I open the Actions menu again and select the last item in the list:
[View submenu, Actions submenu
Speak changes in object's contents, F12, Switch this off in AT Prime's main menu, c
Audacity
Record meter peak -34dB]
The Window Inspector closes and, as I speak and the peak level changes, the screenreader lets me know the updated level.
[(The updated level is continuously reported when louder signal is received during speech)]
As the speak changes menu item in the Actions menu tells you, you turn off speak changes in the AT Prime menu, not in the Window Inspector so I simply open the AT Prime menu and arrow up until I find 'Turn off speak changes' and press Enter. It’s as easy as that. No special modes, no keystrokes to learn and no scripting. Just selecting commands on menus in AT Prime.